
// 模块工程化
import Vue from 'vue'

import VueRouter from 'vue-router'

// 引入vant 轻提示框
import { Toast } from 'vant'

Vue.use(VueRouter)
// 创建路由对象并配置路由
const router = new VueRouter({
    // 配置路由
    routes: [
        // 默认首页
        {
            name: 'default',
            path: '/',
            // 重定向
            redirect: { name: 'index' }
        },
        // 首页
        {
            name: 'index',
            path: '/index',
            component: () => import('@/views/index.vue')
        },
        // 文章详情
        {
            name: 'articleDetail',
            path: '/articleDetail/:id',
            component: () => import('@/views/articleDetail.vue')
        },
        // 注册
        {
            name: 'register',
            path: '/register',
            component: () => import('@/views/register.vue')
        },
        // 登录
        {
            name: 'login',
            path: '/login',
            component: () => import('@/views/login.vue')
        },
        //    个人中心
        {
            name: 'personal',
            path: '/personal/:id',
            // path: '/personal',
            component: () => import('@/views/personal.vue')

        },
        //    栏目管理
        {
            name: 'cateManager',
            path: '/cateManager',
            component: () => import('@/views/cateManager.vue')

        }
        ,
        //    搜索页面
        {
            name: 'Search',
            path: '/Search',
            component: () => import('@/views/Search.vue')

        }
        ,
        //    用户关注列表
        {
            name: 'user_follows',
            path: '/user_follows',
            component: () => import('@/views/myFollow.vue')

        },
        //    用户收藏列表
        {
            name: 'user_star',
            path: '/user_star',
            component: () => import('@/views/myStar.vue')

        }
        ,
        //    用户评论列表
        {
            name: 'comments',
            path: '/comments/:id',
            component: () => import('@/views/comment.vue')

        },
        // 个人信息编辑
        {
            name: 'edit_profile',
            path: '/edit_profile/:id',
            component: () => import('@/views/edit_profile.vue')

        }
    ]

})

// 添加路由守卫---导航首位
// 通过判断来决定当前的路由跳转到底能不能进行
// 只要进行路由的跳转就会自动触发，不能认为调用

router.beforeEach((to, from, next) => {
    console.log(1);
    console.log(to, from);
    // 判断当前用户是否登录 登录了则可以跳转，否则重定向到登录页
    // 获取用户登录之后的token 进行token的判断
    if (to.name == 'personal' || to.name == 'edit_profile') {  //判断是否跳转到个人中心页
        if (localStorage.getItem('hm_toutiao_56')) {
            let token = JSON.parse(localStorage.getItem('hm_toutiao_56')).token
            if (token) {
                next()
            } else {
                Toast('请先登录')
                // 说明没有登录 重定向到登录页  方法也push一样使用
                next({ name: 'login' })
            }
        } else {
            Toast('请先登录')
            // 说明没有登录 重定向到登录页  方法也push一样使用
            next({ name: 'login' })
        }

    } else {
        next()
    }


})

// 暴露
export default router